// pages/me/me.js
const app = getApp()
const db = wx.cloud.database()
const userinfoList = db.collection('user')
var that
Page({

    /**
     * 页面的初始数据
     */
    data: {
        userInfo: {},
        hasUserInfo: false,
        userlists: [],
        listicons: [{
            icon: "cloud://cloud1-9g5qe48meb38bfec.636c-cloud1-9g5qe48meb38bfec-1310438790/我的优惠卷 (1).png",
            title: "我的优惠卷",
            desc: "",
            url: ""
          },
          {
            icon: "cloud://cloud1-9g5qe48meb38bfec.636c-cloud1-9g5qe48meb38bfec-1310438790/我的订单.png",
            title: "我的订单",
            desc: "",
            url: ""
          },
          {
            icon: "cloud://cloud1-9g5qe48meb38bfec.636c-cloud1-9g5qe48meb38bfec-1310438790/个人资料.png",
            title: "个人资料",
            desc: "",
            url: ""
          },
          {
            icon: "cloud://cloud1-9g5qe48meb38bfec.636c-cloud1-9g5qe48meb38bfec-1310438790/关于.png",
            title: "关于",
            desc: "",
            url: ""
          }
        ],
        user_openid : "",
        user_imageUrl : "",
        user_name : ""
    },

    getid(){
        wx.cloud.callFunction({
            name: "login",//这里写上云函数abc的名字，一定要输入正确不然会报错！
            success(res) {        
               //console.log("获取openid成功:", res.result.openid)
               wx.setStorageSync('openid', res.result.openid)
               //这里获取成功后可以通过 res.result.openid来获取用户的openid        
             },
            fail(err) {        
               console.log("获取openid失败:", err)
               //当获取失败，1.要考虑云函数部署是否成功；
               //           2.要查看调用的这个云函数的名字输入是否正确
            }   
      })
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        let isfirst = wx.getStorageSync('userId')
        //console.log("isfirst:"+isfirst)
        //这个是在已经完成过一次授权之后再次登录直接加载openid信息，避免多次调用授权操作
        if (isfirst) {
          //Do something with return value
          userinfoList.where({
            //可以用这个获取openid，app.globalData.userInfo.openid，也可以用下面的方式
            _openid: isfirst
          }).get({
            success: res => {
              this.setData({
                userlists: res.data[0],
              })
            }
          })
        }
        //这里是直接读取第一次授权是设置的用户信息（头像、昵称）的缓存信息
        let user = wx.getStorageSync('userInfo')
        //console.log(user);
        let open_id = wx.getStorageSync('userId')
        if (user) {
        this.setData({
            userInfo: user,
            hasUserInfo: true
        })
        }
        this.getid()
       
    },

    getUserProfile(e) {
        wx.cloud.callFunction({
          name: 'login',
          success: res => {
            wx.setStorageSync('userId', res.result.wxInfo.OPENID)
            console.log("hhhhh:  "+res.result.wxInfo.OPENID);
            userinfoList.where({
              _openid: res.result.wxInfo.OPENID
            }).get({
              success: res => {
                // console.log(res)
                this.setData({
                  userlists: res.data[0]
                })
              }
            })
          }
        })
        wx.getUserProfile({
          desc: '用于完善会员资料',
          success: (res) => {
            // let user = res.userInfo
            // wx.setStorageSync('user', user)
            wx.setStorageSync('userInfo', res.userInfo)
            this.setData({
              userInfo: res.userInfo,
              hasUserInfo: true
            })
            this.data.user_openid = wx.getStorageSync('openid')
            console.log("本地拿到openid："+this.data.user_openid);
            this.data.userInfo = wx.getStorageSync('userInfo')
            //console.log("本地获取到userInfo"+this.data.userInfo);
            this.data.user_imageUrl = this.data.userInfo.avatarUrl
            console.log("本地获取到用户图像地址："+this.data.user_imageUrl);
            this.data.user_name = this.data.userInfo.nickName
            console.log("本地获取到用户名称："+this.data.user_name);

            //凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里
            //凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里
            //凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里
            //凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里
            //凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里凯哥看这里
            wx.request({
                url: 'http://localhost:8080/addUser',
                data:{
                "user_id" : this.data.user_openid,
                "user_imageUrl" : this.data.user_imageUrl,
                "user_name" : this.data.user_name,
                },
                header: {
                "Content-Type": "application/x-www-form-urlencoded"
                },
                method: 'POST',
                success: function (res) {
                console.log(res)
            },
            fail: function () {
            // fail
            },
            complete: function () {
            // complete
            }
            })
          }
        })
      },
    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {
        
    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})